When a seller and a buyer, i.e. order or quote owners, agree to a particular price for a financial instrument they complete a trade. That is to say that they complete a verbal, or electronic, transaction involving one party buying a financial instrument from another party. The trades are typically initiated and completed by trading entities such as individuals, firms, dealers (who may be either individuals or firms), traders and brokers or sometimes by the order owners themselves. Trading of financial instruments is generally performed on an exchange, i.e. a trading venue and the trading is typically done through brokers, or traders, who buy or sell the financial instruments on behalf of the order owners. The term “financial instruments” is used in a broad sense and encompasses any tradable item i.e. securities, derivative or commodity, such as stocks, bonds, cash, swaps, futures, foreign exchange, options, gas electricity and so forth, or group of items that is traded through matching of counterparty orders.
A conventional automated exchange typically receives order input data, in the form of data messages, from external devices used by traders, or brokers. The traders, or brokers, submit orders and/or quotes (or alterations/cancellations thereof) to the automated exchange for purposes of trading. In this context, an order is a request to sell or buy a financial instrument from any trading participant of the automated exchange and a “quote” may be an “offer” price, a “bid” price, or a combination of both an “offer” and “bid” price of a financial instrument, and is determined from quotations made by market makers (or dealers).
The orders/quotes may relate to buying and/or selling of any type of financial instrument. In particular, the input data to the automated exchange can be an order data message that represents the placing of a new bid or sell order, or a new quote. The order data message can also represent the change of an existing bid or sell order, or a quote. In addition, the order data message can represent a cancellation/change of an existing bid or sell order, or a quote.
FIG. 1 illustrates an example of a conventional automated exchange system 100. It comprises trader terminals in the form of client devices 110 that are used for e.g. issuing order data messages, i.e. input data received by the automated exchange 140. The client devices 110 are connectable, for example over the internet 120A, or over some other connection means like a dedicated fiber 120B, to an electronic marketplace, i.e. the automated exchange 140. The automated exchange 140 can be hosted on a single computer server or a cluster of computer servers. Typically, the automated exchange 140 comprises a matching engine, herein sometimes also abbreviated ME. Sometimes the client devices 110 are connected to the automated exchange 140 through a gateway 130. The gateway 130 is connected to, or being a part of, the automated exchange 140 and is configured to receive market actions, i.e. orders and/or quotes from the client devices 110. A gateway 130 is usually in connection with the automated exchange 140 on a dedicated network and forwards the market actions to the automated exchange 140 and further usually broadcast updates back to the client devices 110. It should however be understood that information being communicated to and from the automated exchange 140 and the client devices 110 could be communicated via a single communication path. While the client devices 110 in FIG. 1 are illustrated as client devices that traditionally are associated with manual input of market actions, the client devices 110 can also be implemented as algorithmic trading units, sometimes termed automatic order generators, having manual input means for control of the algorithmic trading unit. The algorithmic trading unit may be pre-programmed with instructions to automatically generate sell and buy orders and quotes (or changes/cancellations thereof) in response to input data received from the automated exchange 140. The client devices 110 also represent market makers inputting quotes to the automated exchange 140.
FIG. 2A is a signalling diagram illustrating an example of a present signalling in an automated exchange system 100 when the matching engine of the automated exchange system 140 receives an inbound order data message. In the example shown in FIG. 2A, there are four different client devices 110, denoted CL1, CL2, CL3 and CL4. All four client devices are associated with the same trading entity, e.g. the same trading firm. Some of the client devices 110 are configured to operate according to a first protocol, prA, and other client devices 110 are configured to operate according to a second protocol, prB. In this example, the first protocol, prA, is the so-called OMNet protocol and the second protocol, prB, is the so-called OUCH protocol.
In FIG. 2A, the matching engine 140 receives 201 an inbound order data message from a client 110, CL1, which is operating according to the OMNet protocol. An outbound message is subsequently transmitted 202, 203, or broadcasted, to the client devices 110 that are operating according to the OMNet protocol, i.e. CL1 and CL2. However, as can be seen in the figure, the client devices 110 that are operating according to the OUCH protocol do not receive the outbound message.
FIG. 2B is a signalling diagram illustrating another example of signalling in an automated exchange system 100 when the matching engine 140 receives 211 an inbound order data message. In this example, the matching engine 140 receives 211 an inbound order data message from a client 110, CL3, which is operating according to the OUCH protocol. An outbound message resulting from the matching engine 140 is subsequently returned 212 to the client device from which the matching engine 140 received the inbound order data message. Also, the matching engine 140 transmits 213, 214, or broadcasts, the outbound message to the client devices 110 that are operating according to the OMNet protocol, i.e. CL1 and CL2. However, as can be seen in the figure, the other client devices 110, CL4, that is operating according to the OUCH protocol does not receive the outbound message.
In both examples, the outbound messages resulting from matching 140 will not be transmitted to all client devices 110 of the same trading entity, e.g. the same trading firm. Instead, only some of the total number of client devices 110 of the same trading entity can receive the outbound message. Whether a certain client device 110 receives the outbound message or not is dependent on which protocol the client device 110 in question supports.
FIG. 3 is a signalling diagram illustrating an example of the current signalling in an automated exchange system 100 after a matching event has occurred, e.g. a trade has been settled. A post-trade data message is sent 301 from the matching engine 140 to a post-trade gateway 150. The post-trade gateway 150 is responsible for various post-trade activities. Sometimes the post-trade gateway 150 is referred to as a clearance gateway or a settlement gateway. In the example illustrated in FIG. 3, the post-trade gateway 150 is operating according to prA, i.e. the so-called OMNet protocol. In this example, the post-trade gateway 150 (see also FIG. 1) receives 301 the post-trade data message and will, subsequently, transmit 302, 303, or broadcast an outbound post-trade message to those client devices of the trading entity that are operating in accordance with the OMNet protocol, i.e. client devices CL1 and CL2. However, other client devices 110, e.g. those client devices operating according to a different protocol such as the OUCH protocol, may not receive the outbound message from the post-trade gateway 150.
The outbound post-trade data message will thus not be transmitted to all client devices 110 of the same trading entity, e.g. a trading firm. Instead, only some of the total number of client devices 110 of the same trading entity can receive the outbound post-trade data message. Whether a certain client device 110 receives the outbound message or not is dependent on which protocol the client device 110 supports.